System and method for virtual vaulting

ABSTRACT

The present invention is a tape library comprising both a small front-end portion and a larger back-end portion. The front-end portion is a visible virtual or physical tape library; and the back-end portion is a large invisible virtual or physical tape vault. The DPA is a typical DPA which only sees the front-end library. If desired, all messages regarding the importing and exporting of tapes are reviewed by an agent. The agent manages the automatic transfer of tapes between the front-end and the back-end, and notifies the user when a manual import or export is needed. This greatly reduces both the amount of hardware required to establish a virtual or physical tape library and also reduces the amount of labor required by a user to physically import and export tapes. If both the front-end library and the back-end vault are virtual and reside on the same virtual tape library appliance, no data movement is necessary and the tapes can be moved merely by performing small software state changes. In this case, manual operation may be acceptable.

CROSS REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.10/387,319, filed on Mar. 12, 2003, which is incorporated herein byreference as if fully set forth.

BACKGROUND

The present invention is generally related to storage systems. Moreparticularly, the invention is directed to a disk-based storage system,which provides one or more back-end virtual vaults to one or morefront-end visible virtual or physical tape libraries.

In physical or virtual tape libraries, users often purchase a relativelysmall tape library and license their backup application code for therelatively small tape library due to the tremendous expense associatedwith large tape libraries. Referring to FIG. 1, a typical small tapelibrary 10 comprises a plurality of media slots 12 and one or more tapedrives 14. The tape library 10 keeps track of all of the tapes in themedia slots 12 and the tape drives 14, and provides overall managementof the tapes. When a user desires to read from or write to a tape, thetape is removed from a media slot 12 and placed into the tape drive 14.Of course, the tapes 16 do not reside within the tape library 10 inperpetuity. Accordingly, tapes 16 may be removed from the tape library10 to become external tapes 18. These external tapes are typicallystored offsite for security or archiving purposes. External tapes 18 mayalso be imported into the tape library 10 as desired as long as thereare enough media slots 12 available.

Although having a small tape library 10 is an inexpensive way, (in termsof hardware), for an organization to implement data storage using tapes,it is a relatively labor intensive environment. Since the tape libraryis small, the user is forced to continuously import and export tapes toand from the tape library 10 so that needed tapes can be utilized by thetape drive 14.

To alleviate the labor problem, a larger tape library may be used. Sucha larger tape library is shown in FIG. 2. In this large tape library 20,166 media slots 12 are provided. Although only two tape drives 14 areshown for simplicity, those skilled in the art would realize that moretape drives 14 would typically be provided for a tape library of thissize unless the system is used exclusively for archiving purposes. Asone could obviously deduce, having such a large tape library 20 wouldrelieve the user from having to import and export tapes on a frequentbasis.

However, large tape libraries 20 have the drawback that they are muchmore expensive in terms of the hardware and, equally importantly, thelibrary software license.

A seemingly unrelated problem is the desire of physical tape libraryvendors to include a virtual tape library as a relatively smallfront-end cache. In order to do this, the virtual tape library cachemust be able to track tapes that have been exported to a physical tapelibrary and import the appropriate tapes whenever the data protectionapplication (DPA) needs access to tapes that are not located within thevirtual library. Unfortunately, the DPA cannot distinguish between tapesthat have been completely exported and shipped off-site and tapes thathave simply been moved electronically or robotically to a back-endvault.

Thus, the problem of importing and exporting tapes to and from a tapelibrary is closely related to the problem of designing a small front-endcache to a large library. This is because much of the work in designingsuch a cache involves moving media between the front-end cache and thebackend vault, effectively exporting media from one library andimporting this media into the other and keeping track of thisinteraction.

Accordingly, present tape library configurations leave much to bedesired in terms of flexible import/export mechanisms; particularly whenmedia is moved between multiple libraries.

SUMMARY

The present invention is a tape library comprising both a smallfront-end portion and a larger back-end portion. The front-end portionis a visible virtual or physical tape library; and the back-end portionis a large invisible virtual or physical tape vault. The DPA is atypical DPA which only sees the front-end library. If desired, allmessages regarding the importing and exporting of tapes are reviewed byan agent. The agent manages the automatic transfer of tapes between thefront-end and the back-end, and notifies the user when a manual importor export is needed. This greatly reduces both the amount of hardwarerequired to establish a virtual or physical tape library and alsoreduces the amount of labor required by a user to physically import andexport tapes. If both the front-end library and the back-end vault arevirtual and reside on the same virtual tape library appliance, no datamovement is necessary and the tapes can be moved merely by performingsmall software state changes. In this case, manual operation may beacceptable.

BRIEF DESCRIPTION OF THE DRAWING(S)

FIG. 1 is a prior art small tape library.

FIG. 2 is a prior art large tape library.

FIG. 3 is a tape library made in accordance with the present inventionhaving both a visible front-end and an invisible back-end.

FIG. 4 is a block diagram of the internal information flow of the systemof the present invention.

FIG. 5 is a method for importing a tape in accordance with the preferredembodiment of the present invention.

FIG. 6 is a method for exporting a tape in accordance with the preferredembodiment of the present invention.

FIG. 7 is an alternative embodiment of the present invention.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT(S)

The present invention will be described with reference to the drawingfigures where like numerals represent like elements throughout.

Referring to FIG. 3, a tape library system 30 made in accordance withthe present invention is shown. The tape library system 30 comprises afront-end, visible virtual or physical tape library 32 and a back-end,invisible virtual or physical tape vault. As is evident from FIG. 3, theback-end library does not necessarily need to include any tape drives ifit is used solely for vaulting purposes. Alternatively, one or more tapedrives may be included if desired.

Hereinafter, reference will be made only to “tape library” or “tapevault” for simplicity. However, these terms should be understood bythose skilled in the art to refer to both virtual or physical tapedevices comprising an active medium (such as a disk drive), a passivemedium (such as a tape cartridge), or a combination of both active andpassive media. The front-end tape library 32 comprises a plurality ofmedia slots 36 and a plurality of tape drives 38. Although there are tenmedia slots 36 and two tape drives 38 in the embodiment shown in FIG. 3,one skilled in the art would clearly realize that any number of mediaslots 36 and/or tape drives 38 may be utilized. The back-end tape vaultcomprises additional media slots 40 for seemingly exported tapes.Exported or external tapes are shown as tapes 42.

The DPA that is used in the front-end tape library 32 only sees tapesthat are in the front-end tape library 32. Accordingly, the DPA operatesin a manner that is exactly the same as with current tape librariessince current DPAs cannot distinguish between a virtual tape library anda physical tape library, or between a tape library with a vault and atape library without a vault. However, as will be explained in greaterdetail hereinafter, the present invention may include an agent thatintercepts all import and export messages from the DPA such that when atape is exported from the front-end tape library 32, it may be exportedonly to the back-end invisible tape vault 34, and not exported as anexternal tape 42.

The back-end invisible tape vault 34 provides additional media slots 40such that a tape exported from the front-end tape library 32 will beexported only to the back-end tape vault 34. When the DPA calls up atape that it assumes was exported, the tape may actually reside withinthe back-end tape vault 34. The agent retrieves the tape from theback-end tape vault 34 and imports it into the front-end tape library 32automatically, thus freeing the user from having to perform a manualtape import or export. Referring to the bottom of FIG. 3, the prior artrequired a manual intercession by the user in order to take the tapesfrom the front-end tape library at point one (1) and export them asexternal tapes 42 at point three (3). In contrast, the present inventionprovides an intermediate point two (2) by automatically transferringtapes between points one (1) and two (2) from the front-end tape library32 to the back-end tape vault 34. Once the back-end tape vault 34 isfull or, more typically, if a tape needs to be moved off-site eitherelectronically or physically, a manual intercession by the user as shownbetween points two (2) and three (3) may be required to export the tapesas exported external tapes 42.

Referring to FIG. 4, a flow diagram of the internal information flowwithin the information storage system 30 of the present invention isshown. As shown, the information flow is between the DPA 41, the agent43, the tape operator 44, the tape library 46 and the tape vault 48.Point one (1) of FIG. 3 represents normal interaction between the DPA 41and a tape library 46. From the perspective of the DPA 41, thecommunication 50 between the DPA 41 and the tape library 46 is normal.Additionally, when the DPA 41 desires to import or export a tape, itsends a communication 52 to the tape operator 44. However, in accordancewith the present invention, the communication 52 is intercepted by theagent 43. The agent 43 provides overall control and tracking of thetapes that are within the tape vault 48. If a tape is within the tapevault 48, the agent 43 sends a communication 56 to the tape vault 48requesting that the tape vault 48 move the desired tape from the tapevault 48 to the tape library 46. If the desired tape is not in the tapevault 48, the agent 43 forwards a message via a communication 54 to thetape operator 44 requesting that the tape operator 44 manually insert atape into the tape library 46 or, in an alternative embodiment, to thetape vault 48.

With respect to the DPA 41 requesting that a tape be exported from thetape library 46, the same process is followed. The DPA 41 requests thetape operator 44 via a communication 52 to remove a tape from the tapelibrary 46. The agent 43 intercepts this communication 52 and, if thereis enough storage within the tape vault 48, sends a communication 56 tothe tape vault 48 requesting that the tape vault 48 accept the tape fromthe tape library 46 via a communication 58. If there is no room withinthe tape vault 48, the agent 43 passes the message via a secondcommunication 54 to the tape operator 44 requesting that the tapeoperator 44 remove the tape from the tape library 46 or, in analternative embodiment, from the tape vault 48.

Accordingly, a tape could be removed from the tape vault 48, which couldautomatically trigger the tape vault 48 to fetch the tapes in theentry/exit slot of the front-end library 46 because it now definitelyhas free space; or the tape could be removed from the front-end library46 directly. The DPA 41 cannot track the different states once a tape isout of the front-end library 46 unless the user manually enters thisinformation. For example, the DPA 41 does not know if the tape iscurrently in the mailroom, in the FedEx central office, or simply lost.Similarly, it does not know whether it is in the tape vault 48.

Referring to FIG. 5, a method 60 for importing a tape in accordance withthe present invention is shown. A DPA corresponds with a tape library ina normal manner (step 61). When the DPA requests a tape that is not inthe tape library, (step 62), the DPA sends a message requesting that atape be manually imported into the tape library (step 64). The agentintercepts the message and determines whether or not the requested tapeis in the tape vault (step 66). If the tape is not in the tape vault,the agent forwards a message to the tape operator to manually import thetape (step 68). If the tape is located in the tape vault, the agentinstructs the tape vault to import the tape into the tape library (step70).

Referring to FIG. 6, a method 90 for exporting a tape in accordance withthe present invention is shown. In this method, the DPA corresponds withthe tape library in a normal manner (step 92). When the DPA requeststhat a tape be exported from the tape library (step 94), the DPA sends amessage requesting that the tape be manually exported, (i.e., moved tothe entry/exit slot of the tape library), from the tape library (step96). The agent intercepts this message and determines whether there isenough storage space in the vault (step 98).

The intercepted signal, like the signal described in connection withFIG. 5, may be any type of signal. For example, the signal may be anE-mail (SMTP and MAPI), Pager, Printer, Net send, SNMP, Windows NT EventLog entry or any other type of signal that asks the operator to importor export a tape.

Referring again to FIG. 6, if there is enough space for the tape in thevault, the agent instructs the vault to export the tape automaticallyfrom the tape library (step 100) so that the tape may be stored therein.However, if there is not enough space for the tape in the vault, theagent forwards a message to the tape operator to manually export thetape (step 99) or to free space in the vault.

In accordance with the present invention, tapes can be exported from arelatively small library to a larger tape vault and other tapes from thelarger tape vault into the tape library. Since this operation is underprogrammatic control, this process is much less labor intensive thanhandling of physical tapes. This process can be completely automated.

The present invention has the following advantages. First, it allows forsimple implementation of one or more small front-end tape libraries thatshare a large physical tape vault. For example, as shown in FIG. 7, aplurality of small front-end physical tape libraries 110, 112, 114, 116may be linked to a single tape vault 120. A single agent associated withthe tape vault 120 will provide overall control of importing andexporting of tapes from all of the small front-end tape libraries 110,112, 114, 116 and the tape vault 120. The agent may queue DPA requestsfrom multiple front-end libraries and execute them in sequence, or mayprioritize them according to a management policy. All other aspects ofthe system are the same for a multiple front-end tape library set up asshown in FIG. 7 as with the single front-end tape library embodimentshown in FIG. 3. The communications between the multiple small front-endtape libraries 110, 112, 114, 116 and the tape vault 120 will be thesame as shown in FIG. 4 and as explained with reference to theprocedures 60, 90 in FIGS. 5 and 6 respectively.

The present invention also makes it extremely easy to “clone” tapes.This is useful when one copy of a tape needs to be shipped off-site andanother copy of the identical tape is kept on-site for fast restores. Inthis scenario, whenever a tape is written to and is subsequently removedfrom a tape drive, it is copied (instead of moved) to the tape vault. Ifdata is appended to an existing tape, it is simply written in thefront-end tape library and upon removal from a drive, the append iswritten to the back-end tape.

Since the DPA is only aware of the small front-end library, the back upsoftware can be purchased for the small library, rather than a largeback-end tape vault. For the example shown in FIG. 3, the DPA only seesten (10) media slots even though the vault extension expands the libraryto a thirty-eight (38) slot library.

In an alternative embodiment, no agent is used. Instead, several slotsin the front-end library are reserved. These slots are then used torotate media from the back-end library through. Whenever a new set ofmedia is moved from the back-end library to the reserved slots, thebackup application is informed, (for example, via standard SCSIcommands), that an inventory change has occurred. The backup softwarethen reads the new inventory and fetches the tapes it needs from thereserved slots. The two approaches can also be combined. For example,the most frequent import/export operation is to move full tapes out ofthe library to replace them with empty tapes. This can be completelyautomated. Once a tape is full and moved to a slot in the library, thetape can immediately be replaced by a blank tape and the backupapplication can be informed of the inventory change. This avoids manyexport requests altogether.

1. A storage system comprising: a front-end portion configured to storeat least one tape; a data protection application running on thefront-end portion; a back-end portion configured to store tapes exportedfrom the front-end portion; an agent configured to intercept messagessent by the data protection application; and wherein if the agentintercepts a message from the data protection application requesting anend user to manually import a tape located in the back-end portion, theagent automatically transfers the tape to the front-end portion from theback-end portion without forwarding the intercepted message.
 2. Thestorage system of claim 1 wherein the front-end portion is a tapelibrary.
 3. The storage system of claim 1 wherein the back-end portionis a tape vault.
 4. The storage system of claim 1 wherein the dataprotection application is unaware of the back-end portion.
 5. Thestorage system of claim 1 wherein if the agent intercepts a message fromthe data protection application requesting an end user to manuallyexport a tape from the front-end portion, the agent transfers the tapeto an empty space in the back-end portion without forwarding theintercepted message.
 6. The storage system of claim 1 wherein thefront-end portion is a plurality of front-end portions.
 7. A method formanaging the transfer of tapes in a storage system having at least onefront-end portion and a back-end portion, the method comprising thesteps of: intercepting a message sent from a data protection applicationto an operator requesting a tape be manually imported to a front-endportion of a tape library; determining whether the requested tape islocated in a back-end portion of the tape library; importing therequested tape volume from the back-end portion to the front-end portionwhere the determination is positive; and forwarding the interceptedmessage along to the operator where the determination is negative. 8.The method of claim 7 wherein the front-end portion is a tape library.9. The method of claim 7 wherein the back-end portion is a tape vault.10. The method of claim 7 wherein the data protection application isrunning on the front-end portion and is unaware of the existence of theback-end portion.
 11. The method of claim 7 wherein the front-endportion is a plurality of front-end portions.
 12. The method of claim 7further comprising the steps of: intercepting a message sent from a dataprotection application to an operator requesting a tape be manuallyexported from a front-end portion of a tape library; determining whetherthe requested tape may be stored in a back-end portion of the tapelibrary; importing the requested tape volume from the front-end portionto the back-end portion where the determination is positive; andforwarding the intercepted message along to the operator where thedetermination is negative.
 13. An agent for managing the transfer oftapes in a storage system comprising: the agent being configured tointercept messages in a storage system having a front-end portionrunning a data protection application and a back-end portion; andwherein if the agent intercepts a message from the data protectionapplication requesting an end user to manually import a tape located inthe back-end portion, the agent automatically transfers the tape to thefront-end portion without forwarding the intercepted message.
 14. Theagent of claim 13 wherein the front-end portion is a tape library. 15.The agent of claim 13 wherein the back-end portion is a tape vault. 16.The agent of claim 13 wherein if the agent intercepts a message from thedata protection application requesting an end user to manually export atape from the front-end portion, the agent transfers the tape to anempty space in the back-end portion without forwarding the interceptedmessage.
 17. The agent of claim 13 wherein the front-end portion is aplurality of front-end portions.